// 自调用函数----食物的
	
(function () {
    /* 食物就是一个对象：宽、高、背景、横纵坐标    先定义构造函数，然后创建对象*/
    var elements = [];//用来保存每个小方块食物的
    function Food(x, y, width, height, color) {
        /* 横纵坐标 */
        this.x = x || 0;
        this.y = y || 0;
        /* 宽和高 */
        this.width = width || 20;
        this.height = height || 20;
        /* 颜色 */
        this.color = color || "green";
    }
    // 为原型添加初始化的方法（作用：在页面上显示这个实物）
    /* 因为食物要在地图上显示，所以，需要在地图上这个参数（map--就是页面上的div.map） */
    Food.prototype.init = function (map) {
        /* 先删除食物 */
        /* 外部无法访问的函数 */
        move();


        // 创建div
        var div = document.createElement("div");
        // 把创建的div放到地图上
        map.appendChild(div)
        // 设置div的样式
        div.style.width = this.width + "px";
        div.style.height = this.height + "px";
        div.style.backgroundColor = this.color;
        // div脱离文档流
        div.style.position = "absolute";
        this.x = parseInt(Math.random() * (map.offsetWidth / this.width)) * this.width;
        this.y = parseInt(Math.random() * (map.offsetHeight / this.height)) * this.height;
        // 横纵坐标----随机产生的
        console.log(this.x, this.y)
        div.style.left = this.x + "px";
        div.style.top = this.y + "px";

        /* 把div添加到elements中 */
        elements.push(div);
    }

    /* 私有函数----删除这个食物 */
    function move() {
        for (var i = 0; i < elements.length; i++) {
            var ele = elements[i];
            /* 找到这个子元素的父级元素，然后删除这个子级元素 */
            ele.parentNode.removeChild(ele);
            /* 再把数组清空 */
            elements.splice(i, 1);
        }
    }


    /* 把Food暴露给window */
    window.Food = Food;

}());